Type-Check Elimination: Two Object-Oriented Reengineering Patterns

نویسندگان

  • Stéphane Ducasse
  • Tamar Richner
  • Robb Nebbe
چکیده

In reengineering an object-oriented system we want to benefit from the expertise developed in earlier efforts. It is therefore essential to have a way to communicate expertise at different levels: from knowledge about how to approach a system to be reengineered, to knowledge about improving code by eliminating ’bad’ style. In this paper we propose to use a pattern form to communicate knowledge about reengineering. A reengineering pattern connects an observable problem in the code to a reengineering goal: it describes the process of going from the existing legacy solution causing or aggravating the problem to a new refactored solution which meets the reengineering goal. It thus gives a method appropriate for a specific problem, rather than proposing a general methodology, and makes reference to the appropriate tools or techniques for obtaining the refactored solution. In this paper we discuss the role of reengineering patterns and contrast them with related kinds of patterns. We then highlight the form of reengineering patterns and present two simple patterns for type-check elimination.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Type-Check Elimination: Two Reengineering Patterns

A reengineering pattern describes how to go from an existing legacy solution to a new refactored solution. In this paper we discuss the role of reengineering patterns and contrast them with design patterns and antipatterns. We then highlight the structure of a reengineering pattern and present two simple, related patterns for type-check elimination. 1 Reengineering Patterns When important legac...

متن کامل

Type-Check Elimination

A reengineering pattern describes how to go from an existing legacy solution to a new refactored solution. In this paper we discuss the role of reengineering patterns and contrast them with design patterns and antipatterns. We then highlight the structure of a reengineering pattern and present two simple, related patterns for type-check elimination. 1 Reengineering Patterns When important legac...

متن کامل

Support Reengineering by Type Reference - A Reengineering Pattern

Reengineering patterns describe and discuss techniques that support reengineering tasks. They help a software engineer to understand the structure and the inner workings of a software system, to identify design problems and to improve the system in order to make it more exible and extensible. In this paper we present a reengineering pattern that shows how you can use type inference to facilitat...

متن کامل

Dynamic Type Inference to Support Object-Oriented Reenginerring in Smalltalk

Type information is a crucial information to support object-oriented reengineering. In a dynamically typed language like Smalltalk standard static type inference is a complex and heavily computational task. In this paper, we report how we use message passing control and compiler extension to support dynamic inference type in Smalltalk. 1 Object-Oriented Reengineering Goals and Needs In the cont...

متن کامل

RECAST: Evolution of Object-Oriented Applications

This research project is about reengineering object-oriented applications. Reengineering such applications inherits complex problems related to software maintenance, i.e., program understanding, program analysis, and program transformation and adds to them (1) the complexity introduced by late binding, dynamic typing, and incremental definition specific to object-oriented programming, and (2) t...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999